﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using MakeIT.MiraPark.Negocios;

namespace MiraPark
{
    public partial class FormLogin : Form
    {
        UsuarioVO usuarioVO = null;
        private string operacao = "";

        public FormLogin()
        {
            InitializeComponent();
        }
        private void timer1_Tick(object sender, EventArgs e)
        {
            DateTime agora = DateTime.Now;
            this.labelDataHora.Text = agora.ToString();
        }

        private void FormLogin_Load(object sender, EventArgs e)
        {
            this.timer1.Start();
        }

        private void buttonOK_Click(object sender, EventArgs e)
        {
            if (this.textBoxUsuario.Text.Trim().Length == 0 || this.textBoxSenha.Text.Trim().Length == 0)
            {
                MessageBox.Show("Informar Usuário e Senha", "Aviso");
                return;
            }

            string usuMaster = ModelBO.getParametro(ParametroVO.parametros.UsuarioMaster);
            string senhaMaster = ModelBO.getParametro(ParametroVO.parametros.SenhaMaster);

            if (this.textBoxUsuario.Text.Equals(usuMaster))
            {
                if (this.textBoxSenha.Text.Equals(ModelBO.Decrypt(senhaMaster)))
                {
                    UsuarioVO master = UsuarioVO.CreateUsuarioVO();
                    master.idUsuario = -1000;
                    master.usuario = usuMaster;
                    this.usuarioVO = master;
                    this.Close();
                    return;
                }
            }

            UsuarioVO usu = ModelBO.getUsuario(this.textBoxUsuario.Text,true,true);
            if (usu == null)
            {
                MessageBox.Show("Usuário não encontrado no sistema.", "Aviso");
                return;
            }
            if (!usu.senha.Equals(this.textBoxSenha.Text)){
                MessageBox.Show("Senha incorreta.", "Aviso");
                return;
            }

            this.usuarioVO = usu;
            this.Close();
        }

        public UsuarioVO getUsuarioVO()
        {
            return this.usuarioVO;
        }

     }
}
